package net.whzjkj.gateway.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.math.BigDecimal;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * 车辆行程
 */
@Data
@Accessors(chain = true)
public class ObdVehicleTrack extends Model<ObdVehicleTrack> {

	@TableId(value = "id", type = IdType.ID_WORKER_STR)
	private String id;
	
	@ApiModelProperty("车辆id")
	private String vehicleId;
	
	@ApiModelProperty("司机id")
	private String driverId;
	
	@ApiModelProperty("开始时间")
	private Date startTime;
	
	@ApiModelProperty("结束时间")
	private Date endTime;
	
	@ApiModelProperty("行程总里程")
	private BigDecimal totalMileage;
	
	@ApiModelProperty("总行驶时间")
	private Integer totalTime;
	
	@ApiModelProperty("平均车速")
	private BigDecimal speed;
	
	@ApiModelProperty("百公里油耗")
	private BigDecimal fuelConsumption;
	
	@ApiModelProperty("行程累计油耗")
	private BigDecimal totalOil;
	
	@ApiModelProperty("热车时长")
	private Integer readyTime;
	
	@ApiModelProperty("怠速时长")
	private Integer idleTiem;
	
	@ApiModelProperty("怠速油耗")
	private BigDecimal idleFuel;
	
	@ApiModelProperty("开始纬度")
	private BigDecimal startLat;
	
	@ApiModelProperty("开始经度")
	private BigDecimal startLong;
	
	@ApiModelProperty("结束纬度")
	private BigDecimal endLat;
	
	@ApiModelProperty("结束经度")
	private BigDecimal endLong;
	
	@ApiModelProperty("行程状态(1-行程中  2-行程结束)")
	private Integer trackStatus;
	
	@ApiModelProperty("分段速度里程（0-20）")
	private BigDecimal mileage0020;
	
	@ApiModelProperty("分段速度里程（20-40）")
	private BigDecimal mileage2040;
	
	@ApiModelProperty("分段速度里程（40-60）")
	private BigDecimal mileage4060;
	
	@ApiModelProperty("分段速度里程（60-90）")
	private BigDecimal mileage6090;
	
	@ApiModelProperty("分段速度里程（90-120）")
	private BigDecimal mileage90120;
	
	@ApiModelProperty("分段速度里程（120以上）")
	private BigDecimal mileage120;
	
	@ApiModelProperty("行驶时长")
	private Integer runTime;
	
	@ApiModelProperty("行程最大速度")
	private BigDecimal maxSpeed;
	
	@ApiModelProperty("急加速")
	private Integer accelerate;
	
	@ApiModelProperty("急减速")
	private Integer decelerate;
	
	@ApiModelProperty("急转弯")
	private Integer sharpTurn;
	
	@ApiModelProperty("快速变道")
	private Integer hyperChannel;
	
	@ApiModelProperty("碰撞报警次数")
	private Integer collision;
	
	@ApiModelProperty("飙车报警次数")
	private Integer brake;
	
	@ApiModelProperty("断电报警次数")
	private Integer accelerate4;
	
	@ApiModelProperty("侧翻报警次数")
	private Integer rollover;
	
	@ApiModelProperty("严重报警次数")
	private Integer serious;
	
	@ApiModelProperty("超速报警次数")
	private Integer speeding;
	
	@ApiModelProperty("水温报警次数")
	private Integer temperature;
	
	@ApiModelProperty("怠速报警次数")
	private Integer idling;
	
	@ApiModelProperty("时间栅栏次数")
	private Integer timeFence;
	
	@ApiModelProperty("区域栅栏次数")
	private Integer regionalFence;
	
	@ApiModelProperty("电子围栏次数")
	private Integer electricFence;
	
	@ApiModelProperty("原地空转次数")
	private Integer idle;
	
	@ApiModelProperty("当前车辆里程")
	private BigDecimal subMileage;
	
	private Integer status;
	
	private Date createTime;
	
}